草庐IT

unit-testing - FluentNhibernate 和 SQLite

全部标签

c++ - 如何在没有外部脚本的情况下链接 CMake 和 SQLite?

我有以下CMakeLists:cmake_minimum_required(VERSION2.8.12.2)project(Tutorial)find_package(sqlite3)if(SQLITE3_FOUND)include_directories(${SQLITE3_INCLUDE_DIRS})target_link_libraries(new${SQLITE3_LIBRARIES})endif(SQLITE3_FOUND)add_executable(Tutorialnew.cpp)但是,当我cmake时,我收到以下消息:CMakeWarningatCMakeLists.t

c++ - 如何在 SQLite 中插入新行 ("\n") 字符?

在尝试插入类似的内容时:"Hello\nWorld"SQLite抛出如下错误:Message:unrecognizedtoken:"'Hello";"(alsofewothererrors)即使我将上面的字符串转换为"Hello''\nWorld"或"Hello\"\n\"World",这些转义字符序列不会在这种情况下工作。我目前使用C++语言,像插入任何其他简单字符串列一样插入此列。我尝试了上面的转义序列(即使我在互联网上读到,它们不适用于\n)。如何在SQLite数据库中插入换行符和其他特殊字符? 最佳答案 在SQL中,没有转义

c++ - 为什么 Google Test/Mock 通过 std::unique_ptr 显示泄露的模拟对象错误?

假设有一个Bar对象,它使用了一个Foo对象。所有权是独占的,因此Bar在其构造函数中将Foo作为std::unique_ptr获取。我想用Google测试框架测试Bar,所以我编写了以下代码:usingnamespacetesting;classFoo{public:virtualintF()=0;};classBar{public:Bar(std::unique_ptr&&foo):m_foo(std::move(foo)){}intB(){returnm_foo->F();}private:std::unique_ptrm_foo;};classMockFoo:publicFoo

c++ - 构建过程中的 QT 和 SQLITE 问题

我正在开发一个使用sqlite的简单应用程序,问题是下面的代码/*...*/QSqlDatabasedb=QSqlDatabase::addDatabase("QSQLITE");db.setDatabaseName("hellogoodbye");if(!db.open()){QMessageBox::critical(0,qApp->tr("Impossibileaprireildatabase"),qApp->tr("Nonèstatopossibileaprireil""database"),QMessageBox::Cancel);}给我:C:\Qt\2010.04\Augu

c++ - sqlite3_bind_text SQLITE_STATIC vs SQLITE_TRANSIENT for c++ string

我有一个返回c++std::string的方法,然后在将其传递到sqlite3_bind_text之前将其转换为c_str()。我的问题是,这应该使用SQLITE_STATIC还是SQLITE_TRANSIENT?sqlite3_bind_text(insertStatement,0,suspect->GetIpString().c_str(),-1,SQLITE_STATIC);//Dosomestuffinsamefunctionthensqlite3_stepsqlite3_bind_text的文档说,Thefifthargumenttosqlite3_bind_blob(),s

java中的sqlite删除方法

我有一种方法可以从数据库中删除一个人(行)。我收到我在捕获量中创建的错误消息。我刚刚开始使用数据库,并且主要是在拼凑不同的技术。我不确定该怎么办publicstaticvoiddeleteperson(字符串firstNameOfpersOntoDelete,字符串LastNameOfPersOntoDelete){statementstmt=null;try{//CreatedatabaseconnectionConnectionc=DriverManager.getConnection("jdbc:sqlite:PERSON.db");//CreateStatementobjectstmt

c++ - 设置 Google Test 时找不到 -lgtest

我正在使用GoogleTestforC++并尝试在我的Linux机器上进行设置。我的make文件包含以下代码:CC=g++CFLAGS=-I$(GOOGLETESTDIR)/include-L$(GOOGLETESTDIR)/lib-lgtest-lpthread-WallDEPS=fib.hOBJS=fib.omain.oall:|r6clean:-rm-fr6$(OBJS)%.o:%.cpp$(DEPS)$(CC)-c-o$@$运行make时出现错误:/usr/bin/ld:cannotfind-lgtest我该如何解决这个问题?我对这种测试很陌生,对Linux也很陌生,所以我真的

c++ - 为什么 istream_iterator<string>(ifstream ("test.txt")) 会导致错误?

我尝试编写代码从名为“test.txt”的文件中读取字符串并将字符串写入标准输出。下面的代码运行良好:intmain(){usingnamespacestd;ifstreamfile("test.txt");copy(istream_iterator(file),istream_iterator(),ostream_iterator(cout,""));}但是,通过此修改,代码不再编译:intmain(){usingnamespacestd;copy(istream_iterator(ifstream("test.txt")),//(),ostream_iterator(cout,""

c++ - 为什么 virtual void test()=00 有效但 virtual void test()=+0 和 virtual void test()=-0 无效?

我搜索了一些关于虚函数声明的帖子,相信=0在virtualvoidtest()=0;是固定句法所以virtualvoidtest()=NULL;virtualvoidtest()=false;virtualvoidtest()=1-1;virtualvoidtest()=0.0;和其他声明应该是无效的。但是我发现了virtualvoidtest()=00;virtualvoidtest()=000;virtualvoidtest()=0000;还能编译,为什么?还有,我觉得整数+0和-0其实和0一样(不知道对不对),就像00其实就是0一样,为什么virtualvoidtest()=+0

c++ - gtest,对 'testing::Test::~Test()' 的 undefined reference ,testing::Test::Test()

我使用apt-getinstalllibgtest-dev安装了gtest我正在尝试检查它是否有效。所以我在eclipse中编写了简单的测试代码。但是有错误,undefinedreferenceto'testing::Test::~Test()'undefinedreferenceto'testing::Test::Test()'相反,如果我将ATest类的继承更改为protected,错误就会消失,但是出现其他错误testing::Testisinaccessiblebaseof'ATest_AAA_Test'怎么了?#include#includeclassA{public:int